A computer network includes computer processors or “hosts” that host software applications that provide or request services, or both. The hosts may be network terminals or end stations that do not perform network traffic routing or forwarding functions. The hosts communicate with each other through network devices, such as switches and routers which perform routing and forwarding functions. When a host is added to a network, the host is typically assigned a logical network address.
In large-scale cable modem networks, end user hosts such as cable modems become active and inactive regularly as users initiate and terminate use of service. In this context, it is wasteful to give every computer a unique and permanent network address. A number of addresses sufficient for the simultaneously operating computers can be shared and re-assigned as one host drops off the network and another host adds onto the network. Configuring each host is a tedious process to perform manually.
The Dynamic Host Configuration Protocol (DHCP) provides a mechanism through which computers using Transmission Control Protocol/Internet Protocol (TCP/IP) can obtain network addresses and other configuration information automatically. A DHCP server process operates on a DHCP server that is conveniently located for several hosts on one or more local networks. As a host comes onto the network, the host and DHCP server exchange DHCP messages and, as a result of the exchange, the DHCP server assigns the host an Internet Protocol (IP) address for a given lease period. Halfway through the lease period, the host exchanges DHCP messages with the DHCP server to renew the lease and maintain the IP address.